在漫長的賞鯨過程中,
了解到就像在想質因數分解,
這種國中就教過的數學基本概念,
在寫程式時很適合用while&for迴圈來寫,
按部就班,從質數2,3,5,7,依序由小到大找出來,
再一一放進list[]的變數中,
如同小鯨魚長大成大鯨魚一般,
這想演算法的過程是緩慢且循序漸進的,
因此程式架構如下:
num = int(input('請使用者輸入一個數字(1~10000): '))
def div_Prime_factor(num):
a = []
print(num, '=', end=' ')#end控制不要換行,用什麼東西做結尾
while num != 1:
for i in range(2, int(num+1)):
if num % i == 0: # i是num的一個質因数
a.append(i)
num = num / i # 將num除以i,剩下的部分繼續分解
break
for i in range(len(a)-1):
print(a[i], '*', end=' ')
print(a[-1])
for i in range(len(a)):
print(a[i], end=' ')
return a
input:28
ouput: 28 = 2 * 2 * 7
2 2 7